/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sk.ke.szatmary.peter.jclac.simpleCiphers;

/**
 * Wrapper for cipher atribute
 * @author nue
 */
public class SimpleCipherAttr<T> {
    
    /**
     * value of cipher atribute
     */
    private T value;
    
    // toto by mal nastavovat iba niekto zvnutra, jo a tu bude ta zmenena hodnota, to zaruci
    // celkom pekny a prehladny pristup, ak changed value bude rovnaka ako value nic sa nezmenilo !!!!
    private T changedValue;

    /**
     * get value of cipher atribute
     * @return value of cipher atribute
     */
    public T getValue() {
        return value;
    }

    /**
     * set value of cipher atribute 
     * @param value  of cipher atribute
     */
    void setValue(T value) {
        this.value = value;
    }

    public T getChangedValue() {
        return changedValue;
    }

    void setChangedValue(T changedValue) { // <--------- musi byt pouzitelne len vnutri sifier
        this.changedValue = changedValue;
    }

 
    /**
     * Contructor with param value
     * @param value of cipher atribute
     */
    public SimpleCipherAttr(T value) {
        this.value = value;
    }
    
    
    
}
